package com.xinzhidi.web.equipmentAlarm.domain.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.xinzhidi.common.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDateTime;
import java.util.Date;


/**
 * 设备告警ListVo对象 equipment_alarm
 *
 * @author ruoyi
 * @date 2023-05-31
 */
@ApiModel(value = "设备告警ListVo对象")
@Data
@EqualsAndHashCode(callSuper = false)
public class EquipmentAlarmListVo {
    private static final long serialVersionUID = 1L;

    private Long id;

    @ApiModelProperty(value = "小区id")
    private Long plotId;

    @ApiModelProperty(value = "小区名称")
    @Excel(name = "小区名称")
    private String plotName;

    @ApiModelProperty(value = "楼栋id")
    private Long buildId;

    @ApiModelProperty(value = "楼栋名称")
    @Excel(name = "楼栋")
    private String buildName;

    @ApiModelProperty(value = "单元id")
    private Long unitId;

    @ApiModelProperty(value = "单元名称")
    @Excel(name = "单元")
    private String unitName;

    @ApiModelProperty(value = "住户id")
    private Long householdId;

    @ApiModelProperty(value = "户号")
    @Excel(name = "户号")
    private String houseNumber;

    @ApiModelProperty(value = "设备id")
    private Long equipmentId;

    @ApiModelProperty(value = "设备名称")
    @Excel(name = "告警设备")
    private String equipmentName;

    @ApiModelProperty(value = "设备编码")
    private String equipmentCode;

    @ApiModelProperty(value = "设备地址")
    private String address;

    @ApiModelProperty(value = "告警设置id")
    private Long alarmSettingId;

    @ApiModelProperty(value = "是否推送（0：推送  1：不推送  默认0）")
    private Integer hideOrPush;

    @ApiModelProperty(value = "推送间隔")
    private Integer pushInterval;

    @ApiModelProperty(value = "告警设置名称")
    @Excel(name = "告警类型")
    private String alarmTypeName;

    @ApiModelProperty(value = "设备类型名称")
    private String equipmentTypeName;

    @ApiModelProperty(value = "告警类型名称")
    private String indexTypeName;

    @ApiModelProperty(value = "告警设置级别")
    private String alarmLevel;

    @ApiModelProperty(value = "备注")
    @Excel(name = "备注")
    private String remark;

    @ApiModelProperty(value = "处理备注")
    private String handleRemark;
    /**
     * 告警时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "告警时间",dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;
    /**
     * 告警时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "处理时间",dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    @ApiModelProperty(value = "状态（0：未处理  1：已处理 ）")
    @Excel(name = "状态", readConverterExp = "0=未处理,1=已处理")
    private String status;

    @ApiModelProperty(value = "最近一次推送时间")
    private LocalDateTime lastSendTime;
}
